package com.un.ebs.production.domain;

import com.un.ebs.product.enums.ProductBomTypeEnum;

import java.util.Date;

import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.springframework.stereotype.Component;
import lombok.Data;
import com.un.ebs.core.metadata.DbField;

/**
 * (ProductionOrderItemView)表实体类
 *
 * @author liubo
 * @since 2020-10-22 10:21:20
 */
@Data
@Component
@TableName("v_production_order_item_view")
@SuppressWarnings("serial")
public class ProductionOrderItemView extends Model<ProductionOrderItemView> {


    @DbField(name = "sale_order_id", length = 40, precision = 0)
    private String saleOrderId;

    @DbField(name = "code", length = 100, precision = 0)
    private String code;

    @TableField(fill = FieldFill.INSERT)
    @DbField(name = "create_at", length = 40, precision = 0)
    private String createAt;

    @TableField(fill = FieldFill.INSERT)
    @DbField(name = "create_at_name", length = 100, precision = 0)
    private String createAtName;

    @TableField(fill = FieldFill.INSERT)
    @DbField(name = "create_time", length = -1, precision = 0)
    private Date createTime;

    @DbField(name = "submit_status", length = -1, precision = 0)
    private Boolean submitStatus;

    @DbField(name = "submit_time", length = -1, precision = 0)
    private Date submitTime;

    @DbField(name = "submit_at", length = 40, precision = 0)
    private String submitAt;

    @DbField(name = "submit_at_name", length = 100, precision = 0)
    private String submitAtName;

    @DbField(name = "personnel_id", length = 40, precision = 0)
    private String personnelId;

    @DbField(name = "personnel_name", length = 100, precision = 0)
    private String personnelName;

    @DbField(name = "plan_deliver_date", length = -1, precision = 0)
    private Date planDeliverDate;

    @DbField(name = "deliver_time", length = -1, precision = 0)
    private Date deliverTime;

    @DbField(name = "deliver_at", length = 40, precision = 0)
    private String deliverAt;

    @DbField(name = "deliver_at_name", length = 100, precision = 0)
    private String deliverAtName;

    @DbField(name = "deliver_status", length = -1, precision = 0)
    private Boolean deliverStatus;

    @TableLogic
    @DbField(name = "is_delete", length = -1, precision = 0)
    private Boolean isDelete;

    @DbField(name = "tenant_id", length = 40, precision = 0)
    private String tenantId;

    @DbField(name = "plan_work_status", length = -1, precision = 0)
    private Boolean planWorkStatus;

    @DbField(name = "plan_work_personnel_id", length = 40, precision = 0)
    private String planWorkPersonnelId;

    @DbField(name = "plan_work_personnel_name", length = 100, precision = 0)
    private String planWorkPersonnelName;

    @DbField(name = "plan_work_date", length = -1, precision = 0)
    private Date planWorkDate;

    @DbField(name = "real_work_date", length = -1, precision = 0)
    private Date realWorkDate;

    @DbField(name = "bom_type", length = -1, precision = 0)
    private ProductBomTypeEnum bomType;

    @DbField(name = "order_id", length = 40, precision = 0)
    private String orderId;

    @DbField(name = "sku_id", length = 40, precision = 0)
    private String skuId;

    @DbField(name = "qty", length = 18, precision = 4)
    private Double qty;

    @DbField(name = "sale_order_item_id", length = 40, precision = 0)
    private String saleOrderItemId;

    @DbField(name = "id", length = 40, precision = 0)
    private String id;

    @DbField(name = "serial_no_begin", length = -1, precision = 0)
    private Integer serialNoBegin;

    @DbField(name = "serial_no_end", length = -1, precision = 0)
    private Integer serialNoEnd;

    @DbField(name = "serial_no", length = 17, precision = 0)
    private String serialNo;

    @DbField(name = "production_seq_id", length = 40, precision = 0)
    private String productionSeqId;

    @DbField(name = "production_seq_name", length = 100, precision = 0)
    private String productionSeqName;


}